package com.sdry.basic.service;

import com.sdry.basic.entity.Material;
import com.sdry.basic.mapper.MaterialMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import javax.annotation.Resource;
import java.util.List;

/**
 *
 *@ClassName: MaterialService
 *@Description: 物料
 *@Author tdd
 *@Date 2020-2-20 15:38:03
 *@version 1.0
*/
@Service
@Transactional(rollbackFor = Exception.class)
public class MaterialServiceImpl implements MaterialService {
	@Resource
	MaterialMapper materialMapper;
	//声明一个Logger
	private final static Logger logger = LoggerFactory.getLogger(MaterialServiceImpl.class);
	/** 
	 * 根据主键id查询实体
	 * @param id 主键id
	 * @return 实体
	*/
	public Material queryById(Long id) {
		return materialMapper.queryById(id);
	}
	/** 
	 * 条件查询所有
	 * @param param 实体条件
	 * @return 实体集合
	*/
	public List<Material> queryAllByMution(Material param) {
		return materialMapper.queryAllByMution(param);
	}
	/** 
	 * 条件分页查询
	 * @param param 实体条件
	 * @return 实体集合
	*/
	public List<Material> findPageByMution(Material param) {
		return materialMapper.findPageByMution(param);
	}
	/** 
	 * 条件查询记录数
	 * @param param 实体条件
	 * @return 实体集合
	*/
	public Integer selectCountByMution(Material param) {
		return materialMapper.selectCountByMution(param);
	}
	/** 
	 * 插入返回id
	 * @param param 实体条件
	 * @return 主键id
	*/
	public Long insert(Material param) {
		return materialMapper.insert(param);
	}
	/** 
	 * 根据主键更新 返回影响行数
	 * @param param 实体条件
	 * @return 影响行数
	*/
	public Integer update(Material param) {
		return materialMapper.update(param);
	}
	/** 
	 * 根据主键拼接的字符串删除返回影响行数
	 * @param ids 主键拼接的字符串
	 * @return 影响行数
	*/
	public Integer delete(String ids) {
		return materialMapper.delete(ids);
	}
}
